For reasons of cost, it is desirable if possible to not use any special solutions, but instead generally available products or solutions. For this reason, there has been a tendency already since the middle of the 1990s to use products from the office environment in controlling industrial machines, for examples PCs for controlling and Ethernet as the communication technology.
But when software is used in office environments, the primary focus is on the correct functioning of the software, and not so much on an exact time aspect. The software should merely do its job within a time frame appropriate for human circumstances, i.e., in under ten seconds or even slightly less. Since in a machine control system the software determines the motion of the machine, it must work relatively precisely and synchronously with the machine motion. The faster and more precisely the machine is to move, the more exact the timing of the software must be. With modern, relatively high-precision machines it is not unusual for motors of the machine to have to be readjusted by the software 8,000 times per second (corresponding to a cycle time of 125 microseconds), or even more often. So it is not only important here that the software do its job relatively correctly, but it must also do so as fast as possible. In this connection one speaks of the real-time capability of the software. The stricter this real-time capability is, the faster and more precisely the machine is able to move.
Standard operating systems, which are also referred to as “general-purpose”operating systems and are installed on standard PCs in the office world, are normally not real-time capable, however, since after all this is not necessary for the intended use. When demand on the system is heavy, standard operating systems are more likely to focus on keeping the entire system in uniform balance, without giving priority to particular applications.